import { NgModule, NgModuleFactory, ModuleWithProviders } from '@angular/core';
import { CoreModule, LazyModuleFactory } from '@abp/ng.core';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { LanguageManagementComponent } from './components/language-management.component';
import { LanguageManagementRoutingModule } from './language-management-routing.module';

@NgModule({
  declarations: [LanguageManagementComponent],
  imports: [CoreModule, ThemeSharedModule, LanguageManagementRoutingModule],
  exports: [LanguageManagementComponent],
})
export class LanguageManagementModule {
  static forChild(): ModuleWithProviders<LanguageManagementModule> {
    return {
      ngModule: LanguageManagementModule,
      providers: [],
    };
  }

  static forLazy(): NgModuleFactory<LanguageManagementModule> {
    return new LazyModuleFactory(LanguageManagementModule.forChild());
  }
}
